﻿using System;
using System.Collections.Generic;
using System.Text;

namespace TestServiceCollection
{
    public interface IOperation
    {
        Guid OperationId { get; set; }

    }

    /// <summary>
    /// 整个应用程序生命周期以内只创建一个实例 
    /// </summary>
    public interface IOperationSingleton : IOperation
    {

    }

    /// <summary>
    /// 每一次GetService都会创建一个新的实例
    /// </summary>
    public interface IOperationTransient : IOperation
    {

    }

    /// <summary>
    /// 在同一个Scope内只初始化一个实例 ，可以理解为（ 每一个request级别只创建一个实例，同一个http request会在一个 scope内）
    /// </summary>
    public interface IOperationScoped : IOperation
    {

    }
}
